package br.com.siscov.model.funcionario.bo;

import java.sql.Connection;

import br.com.siscov.exceptions.IntegrationException;
import br.com.siscov.model.funcionario.dao.MotoristaDAO;
import br.com.siscov.model.vo.MotoristaVo;

public class MotoristaBO extends DataAccessConnection{

	public void incluirMotorista(MotoristaVo motoristaVo) throws IntegrationException {
		Connection connection = obterConexao();
		MotoristaDAO motoristaDAO;
		
		try {
			iniciarTransacao(connection);
			motoristaDAO = new MotoristaDAO();
			
			motoristaDAO.incluirMotorista(connection, motoristaVo);
			motoristaDAO.incluirFuncionarioMotorista(connection, motoristaVo);

			confirmarTransacao(connection);

		} catch (Exception e) {
			voltarTransacao(connection);

		} finally {
			closeConnection(connection);
		}
	}
	
	public void excluirMotorista(Integer matricula, Integer cartMotorista) throws IntegrationException {
		MotoristaDAO motoristaDAO;
		Connection connection=obterConexao();
		
		try {
			iniciarTransacao(connection);
			motoristaDAO = new MotoristaDAO();
			
			motoristaDAO.excluirMotorista(connection, matricula, cartMotorista);
			motoristaDAO.excluirFuncionarioMotorista(connection, matricula);
			
			confirmarTransacao(connection);

		} catch (Exception e) {
			voltarTransacao(connection);

		} finally {
			closeConnection(connection);
		}
	}
	
}
